home *** CD-ROM | disk | FTP | other *** search
/ CU Amiga Super CD-ROM 17 / CU Amiga Magazine's Super CD-ROM 17 (1997)(EMAP Images)(GB)[!][issue 1997-12].iso / CUCD / Programming / DiceSource / lib / setjmp / vfork.a < prev   
Text File  |  1994-02-01  |  731b  |  37 lines

  1.  
  2.         ;   SETJMP/VFORK.A
  3.         ;
  4.         ;   (c)Copyright 1990-91, Matthew Dillon, All Rights Reserved
  5.         ;
  6.         ;   revised to add current __stack_base
  7.  
  8.         section text,code
  9.  
  10.         xdef    __amiga_vfork_return
  11.         xdef    _amiga_vfork
  12.         xref    __amiga_vfork_returnc
  13.         xref    __amiga_vforkc
  14.         xref    __stack_base
  15.         xref    __CStackFree
  16.  
  17.         xref    __amiga_vfork_jmp
  18.  
  19. __amiga_vfork_return
  20.         movem.l D0/D1/A0/A4,-(sp)   ; rc, pr, -, -
  21.         move.l    D1,A0
  22.         move.l    10(A0),A4
  23.         jsr    __amiga_vfork_returnc(pc)
  24.         movem.l (sp)+,D0/D1/A0/A4
  25.         rts
  26.  
  27. _amiga_vfork
  28.         lea    __amiga_vfork_jmp(A4),A0 ; jmp_buf (16 longwords)
  29.         move.l    (sp),A1             ; return address
  30.         movem.l D2-D7/A1-A7,(A0)
  31.         move.l    __stack_base(A4),52(A0)   ;[4] = current stk base
  32.         jsr    __amiga_vforkc(pc)
  33.         rts
  34.  
  35.         END
  36.  
  37.